聊了許多TensorFlow,不能不講到TensorBoard啦!TensorBoard是TensorFlow的視覺化工具包。TensorBoard 提供機器學習實驗所需的視覺化呈現和工具,今天我們就來聊聊TesnsorBoard吧!
TensorBoard是什麼?
對一般使用者來說,TensorFlow深度神經網路所呈現出的內容會很複雜,某些環節出錯也很難除錯,為了便於使用者理解你所訓練的網路,也便於除錯程式,Google才會推出TensorBoard。TensorBoard可以視覺化圖的結構,顯示引數隨著迭代次數的變化,以及它的分佈圖,顯示你訓練使用的資料,可以顯示很多理解和除錯你的網路所需要的東西。要顯示什麼也是可以在程式碼中進行控制的,可以這樣理解,tensorboard並不是只要你訓練了一個網路就會自動生成對應的board,它需要你在程式碼中加入相應的元件才可以顯示到tensorboard中。
引用自https://www.itread01.com/content/1545304892.html
TensorBoard特點
- 追蹤損失和準確率等指標,並以視覺化的方式呈現
- 以視覺化的方式呈現模型圖 (運算和層)
- 檢視權重、偏誤或其他張量隨時間變化的直方圖
- 將嵌入投影至較低維度的空間
- 顯示圖片、文字和音訊資料
- 剖析 TensorFlow 程式
引用自https://www.tensorflow.org/tensorboard?hl=zh-tw
建立TensorBoard
用較為視覺化的方式對筆者來說較為簡單,不然單看TensorFlow呈現出的資料還是有些困難
import tensorflow as tf
width=tf.placeholder("int32",name='w')
height=tf.placeholder("int32",name='h')
area=tf.multiply(w,h,name='a')
with tf.Session() as sess:
init = tf.global_variables_initializer()
sess.run(init)
print('area=',sess.run(a,feed_dict={w: 6,h: 8}))
筆者使用的name參數為w,h,a
輸入完並按下執行後,再繼續輸入以下程式碼:
tf.summary.merge_all()
train_writer = tf.summary.FileWriter('log/area',sess.graph)
輸入完即可把TensorBoard的資料輸入進log檔中啦!
簡單介紹一下剛剛所鍵入的程式碼:tf.summary.merge_all()
: 將所有資料整合tf.summary.FileWriter
: 寫入log檔,即會存取於log/area這個地方
今天簡單介紹了一下TensorBoard,倒數2天啦,再接再厲啦!
Reference: https://www.tensorflow.org/tensorboard?hl=zh-tw
Reference: https://www.itread01.com/content/1545304892.html
Reference: 林大貴(2019):TensorFlow+Keras 深度學習人工智慧實務應用。新北市:博碩文化